
package com.yxinsur.imc.business.enums;

import com.yxinsur.imc.common.utils.StringUtils;
import lombok.Getter;

@Getter
public enum PapersType {

    /**
     * 身份证
     */
    A("A,身份证,居民身份证", "身份证"),

    /**
     * 临时身份证
     */
    B("B,临时身份证", "临时身份证"),

    /**
     * 户口簿
     */
    C("C,户口簿", "户口簿"),
    /**
     * 出生证明
     */
    D("D,出生证明", "出生证明"),

    /**
     * 港澳通行证
     */
    E("E,港澳通行证", "港澳通行证"),

    /**
     * 护照
     */
    F("F,护照", "护照"),
    /**
     * 军官证
     */
    G("G,军官证", "军官证"),

    /**
     * 警官证
     */
    H("H,警官证", "警官证"),

    /**
     * 士兵证
     */
    I("I,士兵证", "士兵证"),

    /**
     * 驾照
     */
    J("J,驾照", "驾照"),

    /**
     * 回乡证
     */
    K("K,回乡证", "回乡证"),

    /**
     * 其他
     */
    O("O,其他", "其他"),

    /**
     * 营业执照
     */
    M("M,营业执照", "营业执照");


    private String keyNames;

    private String keyName;

    private PapersType(String keyNames, String keyName) {
        this.keyNames = keyNames;
        this.keyName = keyName;
    }

    public String getKeyNames() {
        return keyNames;
    }

    public String getKeyName() {
        return keyName;
    }

    public static String getValueByKeyName(String keyName) {
        String keyValue = null;
        if (StringUtils.isNotBlank(keyName)) {
            for (PapersType c : PapersType.values()) {
                if (c.getKeyNames().contains(keyName)) {
                    keyValue = c.name();
                    break;
                }
            }
        }
        return keyValue;
    }

    public static String getKeyNameByValue(String value) {
        String keyValue = null;
        if (StringUtils.isNotBlank(value)) {
            for (PapersType c : PapersType.values()) {
                if (c.getKeyNames().contains(value)) {
                    keyValue = c.getKeyName();
                }
            }
        }
        return keyValue;
    }

}
